The present invention relates to virtualization technology that uses a hypervisor.
Server virtualization is known as fundamental technologies like server consolidation or cloud computing. According to server virtualization, one physical computer is logically partitioned into multiple computers, and an OS (Operating System), application software, and other such computer programs are executed on each of the partitioned computers. A partitioned computer, for example, is called a “virtual machine”.
In server virtualization, it is desirable to enhance the fault tolerance of the virtual machine. Hardware failures may include a processor failure, a chipset failure, or a memory failure, one of which is a Memory Uncorrectable Error (abbreviated as MUE). A MUE is an error in which memory is unable to be corrected due to memory bit inversion. A MUE is generally not a hardware malfunction, but rather a transient failure. Therefore, normally it is not necessary to replace the memory in which the MUE occurred. In a case where the data is normal, this memory may continue to be used.
Memory mirroring is conceivable as a method for restoring the data inside the memory area where the MUE occurred. For example, Japanese Patent Laid-Open Publication No. 2006-243852 discloses a technology in which a memory transferring part in an operation system transfers data in the operation memory to a memory copy part in a stand-by system. However, in accordance with this technology, a platform comprising all sorts of mechanisms (a common bus, a dedicated copy mechanism, a dedicated transfer mechanism, a write address monitoring mechanism, a temporary storage area, a dual writing mechanism) are required.
Simply stated, memory mirroring is a method that consumes two times the memory. However, this is difficult to apply to server virtualization. This is because, in server virtualization, physical memory is used in multiple virtual machines, and a scheme for holding down on memory usage is required.
For example, there is the technology disclosed in Japanese Patent Laid-Open Publication No. 2009-199478 related to memory usage. According to this technology, when the OS and a firmware hot-plug function are used, and the memory used by OS has been exhausted, memory mirroring is dynamically invalidated. According to this technology, the guest OS has to support the hot-plug.
Memory mirroring-related technology that does not require special hardware mechanisms and a special guest OS is known (for example, Japanese Patent Laid-Open Publication No. 2007-207250). According to Japanese Patent Laid-Open Publication No. 2007-207250, memory mirroring is realized by using a processor write-protect function.